Bar code scanner positioning

ABSTRACT

A method of reading bar code symbols includes determining one or more parameters based upon the quantity and/or quality of the data which is being acquired, and providing the user with information concerning that parameter. The parameter may, for example, be the rate at which code words in the symbol are being read, and that information may be passed to the user by way of an LED which flashes at a rate which varies with the data acquisition rate. For a given bar code symbol being read, the rate of flashing varies with the position of the bar code reader with respect to the symbol. To improve the data acquisition rate, the user simply moves and/or rotates the bar code reader with respect to the symbol in a direction which causes the rate of flashing to increase. The invention extends to a bar code reader having means for providing an indication to a user of the relative suitability, for optimal reading of a symbol, of the current position of the reader.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to bar code scanning systems,and in particular to a method and apparatus for optimizing or at leastimproving the relative positions of bar code scanner and symbol to beread, during data acquisition.

2. Description of the Prior Art

A frequently encountered problem with bar code scanning, is thedifficulty of aligning the scanner in a manner which allows optimal codeword (data character) acquisition from the symbol. This may beespecially true of two-dimensional bar code symbols having a very lowheight to width ratio. The best acquisition occurs when the scan line isparallel to the symbol, and crosses none of the rows of the symbol. Incertain currently-available bar code scanners, acquisition can still becarried out at up to several degrees of parallel, but at a processing,and consequently at a speed, cost. If the scan line is too skew withrespect to the symbol, then the symbol cannot be decoded at all.Decoding may also be difficult if the symbol is slightly skew withrespect to the scan line, and is also a relatively long way away fromthe scanner.

Previous methods of improving the readability of bar code symbols haveconcentrated upon maintaining the printed quality of the symbol itself,and ensuring that the printed symbol can easily be read under optimalconditions. To that end, there have been several proposals for deviceswhich check printed symbol quality, such as the relative width of thebars and spaces, to provide a warning to the printer if the bar codequality degenerates to such an extent that difficulties are likely to beexperienced when the symbols ultimately come to be read (for example ina supermarket environment). One such method for checking the quality ofprinted bar code symbols is disclosed in U.S. Pat. No. 4,251,798,commonly assigned with the present application. Further details of a barcode verification device which was sold by the present assignee underthe brand name "Laserchek®" may be found in the article by J. Swartz of1 May 1980, entitled "Percent Decode, POS Scanability, and the LaserchekSymbol Analyzer" published by Symbol Technologies, Inc.

The intention of all of these prior art systems was to reduce the numberof misreads by end users (for example, supermarket checkout staff) to aslow a value as possible by maintaining rigorous quality control on theprinted symbol itself. Clearly, the higher the quality of the printedsymbol, the more leeway there will be for a checkout operator to miss aline or otherwise mis-align or otherwise poorly position the bar codereader with respect to the symbol being read without a misreadresulting.

SUMMARY OF THE INVENTION Objects of the Invention

The present invention aims to reduce the number of bar code symbolswhich result in a misread by helping the user of the scanner properlyalign and position the scanner over the symbol.

It is accordingly an object of the present invention to assist a user ofthe scanner properly to align and position the scanner over the symbol,to maximize the rate of code word acquisition and thereby shorten decodetime.

It is a further object of the invention to provide an indication to theuser when the bar code scanner is in a position in which specularreflections are interfering with the data acquisition process.

Features of the Invention

In keeping with these objects, and others which will become apparenthereafter, there is provided according to one aspect of the invention abar code reader for reading bar code symbols, each symbol including aplurality of data characters, the reader having a scanning headincluding means for generating a scanning light beam to be directedtoward a symbol to be read, on a target; detection means for receivingreflected light from the symbol to produce electrical signalscorresponding to data represented by the symbol; and positioninginformation means responsive to the electrical signals and arranged inuse to provide an indication to a user of the relative suitability foroptimal reading of the symbol of the current position of the reader withrespect to the target.

Preferably, the positioning information means may comprise a lightmeans, for example, an LED. The light means may be arranged to flash ata rate which indicates to the user the relative suitability of thecurrent position.

Alternatively, the positioning information means may comprise a soundsource, for example, a variable pitch sound source in which the pitch ofthe sound indicates to the user the suitability of the current position.In another embodiment, the sound source could be arranged to produced arepeated tone at a variable repetition rate, with the repetition rateindicating to the user the relative suitability of the current position.

The indication which is provided to the user may be based upon any oneor more of a number of calculated criteria relating to the qualityand/or to the quantity of the data which is being acquired by the barcode reader. For example, the indication could be based upon the rate atwhich data characters are being read, or alternatively to the rate atwhich start and stop code words on the symbol are being detected. Itcould also be based upon the calculated distance between start and/orstop code words, as read from the symbol, and the end of the scan line;this is useful for indicating if the scan line extends too far over theends of the symbol. The indication could, further, be based upon acalculated distance between the scanning head and the target, or thenumber of rows of data characters in the symbol which are being crossedby a single scan line (the number of "cluster crossings").

The indication could be based upon any chosen combination of the abovefeatures, or indeed any other values representative of the quality ofquantity of the data which is being acquired.

Since the information is being provided to the user in real time, thatis, as data acquisition proceeds, it is a simple matter for the user tomove the bar code scanner, or to move the target on which the symbol isprinted, to improve the positioning and/or orientation.

According to a further aspect of the present invention, there isprovided a method of reading a bar code symbol, each symbol including aplurality of data characters, using a bar code reading having a scanninghead including means for generating a scanning light beam, and detectionmeans for receiving reflected light from a symbol being read and forproducing electrical signals corresponding to data represented by thesymbol, the method comprising:

(a) relatively positioning the reader and a target carrying a symbol tobe read, with the scanning light beam arranged to scan across thesymbol;

(b) determining, from the electrical signals, the relative suitabilityfor optimal reading of the symbol the current relative position of thereader and the target;

(c) producing a suitability signal representative of the relativesuitability; and

(d) adjusting the current relative position in dependence upon thesuitability signal.

The suitability signal may indicate to the user when the relativepositioning of the bar code scanner and the target is sub-optimal, forexample, because the symbol is skew with respect to the scan lines,because the symbol is too far away from the scanner, or because thecenter of the scanned area is not substantially coincident with thecenter of the symbol.

The information provided by the suitability signal may provide the userwith an indication that the scanner is in the "dead zone" where specularreflections from the bar code symbol are swamping the defuse reflectionswhich provide the data to be read. The user may then move the bar codescanner, or the bar code symbol, to a different position and/or angle toavoid the specular reflections.

The invention may be carried into practice in a number of ways, and onespecific embodiment will now be described, by way of example, withreference to the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an exemplary bar code scanner embodying the presentinvention; and

FIG. 2 is a block diagram illustrating the operation of the bar codescanner of FIG. 1.

DESCRIPTION OF THE PREFERRED EMBODIMENT

A hand-held scanner 10 embodying the present invention is shownschematically in FIG. 1. The scanner has a manually-graspable handleportion 12, carrying a trigger 14, which the user presses to actuate thescanner. Upon actuation, a scanning head 15 (FIG. 2) produces a scanninglight beam 16, which leaves the scanner via a window 18. The userdirects the scanning light beam 16 so that it falls on a target 22carrying a bar code symbol 20 to be decoded. Light 17 reflected backfrom the bar code symbol 20 passes through the window 18 and is detectedby a photosensor 19. Signals from the photosensor 19 are passed to aprocessor unit 24 including a microprocessor 26.

The processor unit 24 provides a real-time analysis of code wordacquisition from the symbol 20, and determines a number of parametersbased upon the quality and the quantity of the data that is beingacquired. These parameters are calculated under control of computersoftware in the microprocessor 26, such software being well within theordinary skill of one skilled in this field.

Parameters may be calculated based upon any one of many values, such as,for example, the number of scan lines with proper margin indicators, thenumber of cluster crossings (that is, the number of rows in atwo-dimensional bar code symbol which are crossed in a single scanline), the code word count, the resynchronization count, the start andstop code word count, the distance between start and stop code wordsfrom the ends of the scan line (this indicates if the scan line extendstoo far over the ends of the symbol), the error count reduction rate,the code word (data) acquisition rate, and the relative calculateddistance from the bar code reader to the symbol.

In PDF 417 decoding, if a particular scan lines does not contain two rowID's (which encode the row numbers), then the scan line may only crosspart of the symbol. If this happens frequently, it is a clear indicatorthat the scanner and symbol are improperly aligned.

In an implementation of a PDF 417 decoder, the software must attempt tofind valid codewords in the scan line beginning at the point where thescan line has crossed horizontal rows. Crossing rows usually results inan invalid codeword at the point of crossing. We term the process offinding valid codewords after a row crossing "resynchronization". Thus,the resynchronization count can be used as a measure of the frequency ofrow crossings and thus as a measure of how well aligned the scanner andsymbol are.

In PDF 417, as codewords are acquired and confirmed to be valid, theyare added to the matrix (or image) of the decoded symbol. The number ofcodewords present in the symbol is known, since that is encoded withinthe symbol itself. The number of codewords missing from the final imageis known as the error count. The rate at which the error count reducesmay be an even better measure that codeword acquisition rate, since itcan reveal not only that the scanner and symbol may be well aligned, butwell aligned to acquire the necessary remaining codewords. Acquiringcodewords that have already been acquired and confirmed to be correct isnot useful.

Signals representative of one or more of the above parameters are thenpassed to positioning information means comprising a light-emittingdiode (LED) 30 and a small loudspeaker 32. These provide feedback to theuser comprising an indication of how well data acquisition is currentlyproceeding, based upon the present position and/or orientation of thebar code reader 10 relative to the bar code symbol 20. Clearly, if thedistance d between the two is too great, then data acquisition is likelyto proceed more slowly than it should, and in extreme cases will ceasealtogether. Similarly, if the scan lines produced by the scanning beam16 are not aligned exactly with the rows of characters in thetwo-dimensional bar code symbol 20, then acquisition will be furthercompromised. Because of the connection between sub-optimal positioningand/or alignment of the scanner with respect to the symbol, and thequality and quantity of data acquisition, the signals produced by theLED 30 and the loudspeaker 32 can provide the user with an indication ofthe extent to which the current positioning is sub-optimal.

In one embodiment, the LED 30 flashes at a variable rate, the rate beinggreater when the positioning is optimal than when it is sub-optimal. Inuse, the user simply moves the scanner 10 to a location in which the LEDis flashing rapidly. To do this, he may need to alter the distance d, toadjust the positional alignment of the scanning beam 16 with respect tothe symbol, or to adjust the relative angular alignment. Alternatively,if the scanner 10 is fixed in position (for example, if it is held in astand (not shown), the user simply adjusts the position of the target totry to increase the flashing rate of the LED 30.

The loudspeaker 32 provides a variable pitch sound source, the pitchincreasing as the positioning becomes closer to the optimal position.Alternatively, in another embodiment, the loudspeaker may provide arepeated pulse of sound, the frequency of the pulse being dependent uponthe suitability of the positioning.

The LED 30 and the loudspeaker 32 need not both be provided: inalternative embodiments (not shown) one or the other may be omitted.

A further LED is provided which simply indicates whether the scanner ison or off.

We claim:
 1. A bar code reader for reading bar code symbols, each symbolincluding a plurality of encoded data characters, the reader having:ascan head including a light beam generator for generating a scanninglight beam to be directed toward a symbol to be read; a light detectorfor receiving reflected light from the symbol to produce electricalsignals corresponding to data represented by the symbol; and adynamically varying relative position information indicator responsiveto the electrical signals and arranged in use to dynamically provide avarying indication to a user during decoding of the relative suitabilityof a current position of the reader with respect to the symbol foroptimal reading of the symbol.
 2. A bar code reader as claimed in claim1 in which the relative position information indicator comprises a lightsource.
 3. A bar code reader as claimed in claim 2 in which the lightsource has a variable flash rate and is arranged to flash at a ratewhich indicates to the user the relative suitability of said currentposition.
 4. A bar code reader as claimed in claim 1 in which the lightbeam generator is a light-emitting diode.
 5. A bar code reader asclaimed in claim 1 in which the relative position information indicatoris a sound source.
 6. A bar code reader as claimed in claim 5 in whichthe sound source is a variable pitch sound source, the pitch of thesound indicating to the user the relative suitability of the saidcurrent position.
 7. A bar code reader as claimed in claim 5 in whichthe sound source is arranged to produce a repeated tone at a variablerepetition rate, the repetition rate indicating to the user the relativesuitability of the said current position.
 8. A bar code reader asclaimed in claim 1 in which the relative position information indicatoris arranged to provide the indication to the user based on the rate atwhich data characters are being read.
 9. A bar code reader as claimed inclaim 1 in which the relative position information indicator is arrangedto provide the indication to the user based on the rate at which thestart and stop code words on the symbol are being detected.
 10. A barcode reader as claimed in claim 1 in which the relative positioninformation indicator is arranged to provide the indication to the userbased on a calculated distance between the start or stop code words, asread from the symbol, and an end of a scan line that the scanning lightbeam traces over the symbol.
 11. A bar code reader as claimed in claim 1in which the relative position information indicator is arranged toprovide the indication to the user based on a calculated distancebetween the scanning head and the target.
 12. A bar code reader asclaimed in claim 1 in which the relative position information indicatoris arranged to provide the indication to the user based on the number ofrows of data characters in the symbol which are being crossed by asingle scan line that the scanning light beam traces over the symbol.13. A bar code reader as claimed in claim 1 comprising a portablehand-held reader.
 14. A method of reading a bar code symbol, each symbolincluding a plurality of encoded data characters, using a bar codereader having a scanning head including a scanning light beam generator,and a light detector for receiving light from a symbol being read andfor producing electrical signals corresponding to data represented bythe symbol, the method comprising:(a) positioning the reader relative toan item carrying a symbol to be read, with the scanning light beamarranged to scan across the symbol; (b) determining, from the electricalsignals, the relative suitability of a current position of the readerwith respect to the symbol for optimal reading of the symbol; (c)producing via a dynamically varying relative position informationindicator a dynamically varying relative suitability signalrepresentative of the relative suitability of the current position; and(d) adjusting the current relative position in dependence upon thedynamically varying relative suitability signal.
 15. A method as claimedin claim 14 in which the adjusting step includes moving the symbol withrespect to the reader.
 16. A method as claimed in claim 14 in which theadjusting step includes moving the reader with respect to the symbol.17. A method as claimed in claim 14 in which the determining stepcomprises calculating from the electrical signals a value representativeof the distance between the scanning head and the symbol, and in whichthe relative suitability signal is representative of the said value. 18.A method as claimed in claim 14 in which the determining step comprisescalculating from the electrical signals a value representative of theangular alignment of the scanning light beam with the symbol, and inwhich the suitability signal is representative of the said value.
 19. Abar code reader for reading bar code symbols, each symbol having anumber of encoded data characters, the reader including:a scan headincluding a light beam generator for generating an automaticallyscanning light beam to be directed toward a symbol to be read; a lightdetector for receiving reflected light from the symbol to produceelectrical signals corresponding to data represented by the symbol; anda dynamically varying relative position information indicator forproviding a dynamically varying indication to a user during decoding ofthe symbol of the relative suitability of a current position of the barcode reader with respect to the symbol for optimal reading of thesymbol.
 20. The bar code reader of claim 19, wherein the positionindicator is an audible indicator.
 21. The bar code reader of claim 20,wherein the position indicator is a visual indicator.